﻿using System;
using System.Collections.Generic;
using EnetaMvc.Core.Domain.Common;

namespace EnetaMvc.Core.Domain.Content
{
    public abstract class ContentItem : BaseEntity 
    {
        public virtual string Title { get; set; }

        public virtual string Abstract { get; set; }
        public virtual string Body { get; set; }

        public virtual DateTime Created { get; set; }
        public virtual User CreatedBy { get; set; }

        public virtual string InfoSourceName { get; set; }
        public virtual string InfoSourceUrl { get; set; }

        public virtual PublishState PublishState { get; set; }
        public virtual User PublishStateBy { get; set; }
        public virtual DateTime PublishStateDate { get; set; }
        public virtual string PublishComment { get; set; }

        public virtual IList<Tag> Tags { get; set; }
        public virtual IList<Comment> Comments { get; set; }
    }
}
